import { Entity } from "../../../../../Core/Module/Entity/Entity";
import { AwakeSystem, IAwake } from "../../../../../Core/Module/EventSystem/IAwakeSystem";
import { DestroySystem, IDestroy } from "../../../../../Core/Module/EventSystem/IDestroySystem";
import { ObjectSystemAttribute, FriendOf, ComponentOf } from "../../../../../Decorator/Decorator";
import { ConsoleComponent } from "./ConsoleComponent";

@ComponentOf(ConsoleComponent)
export class ModeContex extends Entity implements IAwake, IDestroy {
    public Mode: string = "";
}

@FriendOf(ModeContex)
@ObjectSystemAttribute()
export class ModeContexAwakeSystem extends AwakeSystem<ModeContex> {

    Awake(self: ModeContex): void {
        self.Mode = "";
    }

}

@FriendOf(ModeContex)
@ObjectSystemAttribute()
export class ModeContexDestroySystem extends DestroySystem<ModeContex> {

    Destroy(self: ModeContex): void {
        self.Mode = "";
    }

}